﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using AccesoDatos;
using AccesoDatos.Manejador;
using System.Diagnostics;
using Infragistics.Win.UltraWinGrid;
using AccesoDatos.Objetos;

namespace RMA
{
    public partial class frmExcel : Form
    {
        ManejadorSucuralPrincipal msp = new ManejadorSucuralPrincipal();
        clsConsultaSucursal objRep = new clsConsultaSucursal();
        string _Nombre;
        int _Suc;
        DataTable dtResultado = null;
        public frmExcel(string Nombre,int Suc)
        {
            InitializeComponent();
            _Nombre = Nombre;
            _Suc = Suc;
        }

        private void frmExcel_Load(object sender, EventArgs e)
        {

        }
        private void CargarConsulta(string nombre, string Inicio, string Fin, int suc) 
        {
            try
            {
                dgvExcel.DataSource = msp.GetReporteExcel(nombre, Inicio, Fin, suc);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            
        }

        private void btnConsulta_Click(object sender, EventArgs e)
        {
            dgvExcel.DataSource = null;
            backgroundWorker1.RunWorkerAsync();
            spinningProgress1.Visible = true;
            
        }

        private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
        {
            //CargarConsulta(_Nombre, dtpInicio.Value.ToShortDateString(), dtpFin.Value.ToShortDateString(), _Suc);
            dtResultado = msp.GetReporteExcel(_Nombre, dtpInicio.Value.ToShortDateString(), dtpFin.Value.ToShortDateString(), _Suc);

        }

        private void backgroundWorker1_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            spinningProgress1.Visible = false;
            if (dtResultado.Rows.Count != 0)
            {
                dgvExcel.DataSource = dtResultado;
            }
            else
            { }
            
        }

        private void btnExcel_Click(object sender, EventArgs e)
        {
            ExportarExcel();
        }
        public void ExportarExcel()
        {
            string dr = dialogdireccion() + "//ReporteRMA_" + (DateTime.Now.Date.ToShortDateString()).Replace("/", "") + ".xls";
            try
            {
                ultraGridExcelExporter1.Export(dgvExcel, dr);
                Process.Start(dr);

            }
            catch (Exception) { }
        }
        public string dialogdireccion()
        {
            FolderBrowserDialog folder = new FolderBrowserDialog();
            string direccion = "";
            if (folder.ShowDialog() == DialogResult.Cancel)
                return direccion;
            direccion = folder.SelectedPath.ToString();
            return direccion;
        }

        private void btnImprimir_Click(object sender, EventArgs e)
        {
            string Factura = dgvExcel.ActiveRow.Cells[6].Value.ToString();
            string Folio = dgvExcel.ActiveRow.Cells[0].Value.ToString();
            frmReporteReposicion Rep = new frmReporteReposicion(Folio, Factura);
            Rep.ShowDialog();
        }

        

        

       
    }
}
